AWS Elemental MediaLive の料金体系を誰でもイメージ出来る様に整理してみた
こんにちは、大前です。
突然ですが、AWS Elemental MediaLive (以下 MediaLive)の料金ページを見た事はありますか?
MediaLive はライブ配信においてエンコードやパッケージング等を行ってくれる AWS のサービスですが、料金ページを見ると以下の文言が書いてあります。
AWS Elemental MediaLive では、入力、出力、アドオン機能、アイドルリソース、データ転送 のディメンションに従量課金制をご利用いただけます。各チャネルに対する入力 (プライマリとセカンダリ両方のインジェストおよび AWS Elemental Link デバイスを含む)、出力 (出力グループの個々のエンコードを含む) は、チャネルが実行している限り、それぞれ対応するレートで課金されます。(以下のリージョン料金表をご参照ください。) チャンネルの実行中に、入力がコンテンツを受信せず、出力がコンテンツを生成しない場合も、コストが発生します。各ライブチャネルに 1 つ以上の入力と 1 つまたは複数の出力があるため、各入力 (該当する場合) と各出力のコストを加算するとライブチャネルを実行する合計コストを算出できます。 高度なオーディオ機能を有効にすると、実行中のチャネルに対して追加料金が発生します (チャネルごとに課金)。
「?????」となる方も多いのではないでしょうか。料金ページをスクロールしても、呪文の様な言葉の羅列と表がびっしり存在しています。。。
私はある程度 MediaService に関する勉強をしているのでそれなりにイメージ出来ますが、何も知らない人がいきなり MediaLive の料金を算出しようとするとなかなか大変だと思います。
そこで、今回は MediaLive の料金体系を誰でも理解出来るように整理してみました。
AWS Elemental MediaLive の要素
料金体系を理解するには、MediaLive の各要素を理解する必要があります。細かい機能の理解は不要ですので、ざっくり全体像を理解していきましょう。
まず、MediaLive には大きく分けて 入力(Input)と チャネル(Channel) という概念が存在します。
入力(Input)
「入力」とはMediaLive に入力される動画や音声のソースを定義した要素で、MediaLive を使用する際にはまずこれを作成する所から始まります。
ソースの種類としては、PC などからインターネット経由で動画を受け取る事もあれば、他の AWS サービスから入力される事もあり、様々です。
この様に、「どこからどうやって動画や音声を受け取るか」を定義したものが「入力」で、好きな数だけ作成しておく事ができます。
チャネル(Channel)
「チャネル」は、上記にて作成した「入力」を元ファイルとして、エンコードやパッケージングなどの変換処理を行い、新しいコンテンツをアウトプットする方法を定義した要素です。
少し小難しくなって来たため、図で説明してみます。
まずは、変換処理を行う為の元ファイルを決める必要があり、作成済みの「入力」一覧から選択します。
ここでは、作成済みの「入力 #1」を選択する事にします。
「入力#1」は mp4 形式の 1080p(1920x1080)の動画だと仮定します。
これに対して、チャネル内で「出力」を作成し、元ファイルの変換後のパラメータを設定します。
ここでは、HLS 形式の 720p(1280x720)の動画としました。
また、「出力」は変換後の動画をどこに転送するかも合わせて設定します。
ここでは MediaStore というサービスを指定していますが、要件によって異なります。
上記の様にチャネル内で入力(元ファイル)と出力(変換後のファイル)と転送先を設定する事によって、以下の動作が設定された事になります。
「mp4 形式の 1080p で入力された動画を HLS 形式の 720p に変換して MediaStore に送信する」
これが、MediaLive における基本的な要素と概念になります。
AWS Elemental MediaLive で発生する料金
MediaLive の要素や概念がざっくり理解できた所で、改めて MediaLive の料金体系を紐解いていきましょう。
MediaLive における主な課金対象は、以下になります。
- チャネル内の入力
- チャネル内の出力
- チャネル内のアドオン機能
- 使用されていない入力・チャネル(アイドルリソース)
- データ転送
- Statmux 出力
この内、Statmux 出力については少し毛色が異なる為、説明を割愛します。(衛星放送とかに関わってくる技術です)
興味がある方は以下をご参照ください。
Statmux for AWS Elemental MediaLive
チャネル内の入力
チャネル内で定義されている入力に対してそれぞれ課金が発生します。
先述した図を流用すると、赤枠で囲われている部分に課金が発生します。
また、チャネルには条件次第で複数の入力を割り当てる事が出来ますが、割り当てられている入力それぞれに対して課金が発生します。
下記の図では、「入力#1」「入力#2」それぞれ別で料金が計算され、課金されます。
具体的な料金は、主に以下の要素で決定します。
- 入力ソースの解像度
- 入力ソースのビットレート
- 入力ソースのコーデック
- MediaLive チャネルのパイプライン設定
解像度、ビットレート、コーデックについては一般的なキーワードですので割愛します。
パイプライン設定とは、MediaLive が持つ冗長化の仕組みです。
詳しくは記載しませんが、EC2 や RDS における Multi-AZ 構成に近い機能です。
[アップデート] AWS Elemental MediaLiveでシングルパイプラインオプションが利用できるようになりました!
また、先日発表された AWS Elemental Link も MediaLive の入力として扱われますが、これは料金レートが別で用意されています。
上記要素をそれぞれ確認した上で以下の表を使用する事により、入力について具体的な料金を算出する事が出来ます。
チャネル内の出力
入力と類似していますが、チャネル内で定義されている出力に対してそれぞれ課金が発生します。
図の赤枠部分に対して課金が発生します。
入力と同様に、チャネル内の出力も複数定義する事が可能です。
その場合も、同様に各出力についてそれぞれ料金が計算され課金が行われます。
出力の料金を決定する主な要素は以下になります。
- 出力ソースの解像度
- 出力ソースのフレームレート
- 出力ソースのコーデック
- MediaLive チャネルのパイプライン設定
出力ソースの解像度として「Enhanced VQ」という AWS 特有のキーワードがあったりしますが、基本的には上記要素によって料金が決定します。
入力と同じく、上記要素を元に下記表を使用する事で、具体的な料金を算出できます。
チャネル内のアドオン機能
MediaLive には、入力や出力とは別にアドオン機能という要素が存在します。
必要に応じて使用する事が可能な追加機能がある様なイメージです。
アドオン機能として定義されている機能を使用した場合、入力や出力の料金とは別に課金が発生します。
料金表は以下になります。
使用されていない入力・チャネル(アイドルリソース)
MediaLive の入力とチャネルは、使用されていない場合にも課金が発生します。
入力
入力のうち、以下タイプの入力については使用されていない場合にも課金が発生します。
- RTP PUSH
- RTMP PUSH
- AWS Elemental MediaConnect
- AWS Elemental Link デバイス
使用されていない
の定義は以下です
- チャネルにアタッチされていない
- チャネルにアタッチされているが、チャネルが実行中でない
料金としては、1 時間あたり 0.01USD が発生します。1日だと 0.24USD が発生する計算になりますので、使わない入力はしっかりと削除しましょう。
チャネル
チャネルの場合、チャネルが実行されていない場合にアイドルリソースとして扱われ、課金が発生します。
こちらも入力と同じく 1時間あたり 0.01USD が発生します。
使っていない入力とチャネルが 1つずつあるだけで毎日 0.48USD の課金が発生してしまうので、使わなくなった入力とチャネルは必ず削除する様にしましょう。
データ転送
最後に、データ転送についても料金が発生します。
これは他の AWS サービスと類似していますが、ざっくりまとめると以下です。
- MediaLive へのデータ転送 ... 無料
- MediaLive からインターネットへのデータ転送 ... 従量課金
- MediaLive から CloudFront へのデータ転送 ... 無料
- MediaLive から CloudFront 以外を経由するデータ転送 ... 従量課金
詳細は以下を参照ください。
まとめ
まとめると AWS Elemental MediaLive で発生する料金は以下の様に計算できます。
①(チャネル内の入力料金)+ ②(チャネル内の出力料金)+ ③(アドオン機能料金)+ ④(データ転送料金)+ ⑤(アイドルリソース)
おわりに
AWS Elemental MediaLive の料金体系を整理してみました。
この記事がどなたかのお役にたてば幸いです。
以上、AWS事業本部の大前でした。